package com.neusoft.neu24.service;

import com.neusoft.neu24.Result.CommonResult;
import com.neusoft.neu24.dto.*;
import com.neusoft.neu24.entity.Feedback;
import com.neusoft.neu24.entity.FeedbackInfo;
import io.swagger.models.auth.In;

import java.util.List;

/**
 * <p>
 * 监督反馈表 服务类
 * </p>
 *
 * @author fyc
 * @since 2024-06-18
 */
public interface IFeedbackService {

    CommonResult<List<Feedback>> listAll();

    CommonResult<List<Feedback2PublicDTO>> listAllByPid(Integer pid);

    CommonResult<Integer> addFeedbackByPublic(Feedback feedback);

    CommonResult<FeedbackInfo> getInfoByFid(Integer fid);

    CommonResult<List<FeedbackInfo>> getInfos();

    CommonResult<List<TimeLineDTO>> getTimeLines(Integer id);

    CommonResult<List<Feedback2GridDTO>> getTodoListByGid(Integer gid);

    CommonResult<FeedbackInfo> commitFeedback(FeedbackInfo info, Integer fid);

    CommonResult<List<FeedbackHis2GridDTO>> getHisByGid(Integer gid);

    CommonResult<List<Feedback2AdminDTO>> getList();

    CommonResult<List<FeedbackInfo2AdminDTO>> getUndo();

    CommonResult<GridGroupDTO> getPCRs();

    CommonResult<FeedbackInfo2AdminDTO> distribute(Feedback feedback);
}
